Certain techniques have been developed to personalize software applications for a user in an effort to enhance an overall user experience for a given computing or communications environment. For instance, a graphical user interface (GUI) may display various GUI elements according to a certain theme. A theme is a collection of attributes and graphical elements that can be utilized to customize the look of an application program or a web page. For instance, a theme may specify the colors, text size, font, static or moving graphics or video, page layout, and other stylistic elements that can be utilized to customize the visual appearance of a desktop or web application. When used in conjunction with a desktop application program, themes may also allow the customization of other visual elements, such as the size and shape of a user interface window generated by the application program. In some implementations a theme may also allow the customization of audible elements, such as user interface feedback sounds.
In typical implementations, a user may select a theme to personalize or customize an application or web page. However, there may be instances where a user is unable or unwilling to select a theme. For instance, it may be inconvenient for a user to constantly change a theme, a user may not know how to change a theme for a particular GUI, or a user may utilize a device with limited computing and/or communications capabilities making it difficult or impossible to change a theme. It is with respect to these and other considerations that the present improvements have been needed.